package com.jinlia.show.modules.base.model.po;

import com.jinlia.show.modules.base.system.entity.GoodsAttr;
import com.jinlia.show.modules.base.system.entity.GoodsAttrValue;
import lombok.Data;
import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils;

import java.util.List;
import java.util.Objects;

@Data
public class GoodsAttrPO extends GoodsAttr {

    private Long defaultAttrValueId;

    private List<GoodsAttrValue> goodsAttrValues;

    public static GoodsAttrPO fromEntity(GoodsAttr goods) {
        GoodsAttrPO goodsVO = new GoodsAttrPO();
        BeanUtils.copyProperties(goods, goodsVO);
        return goodsVO;
    }

    public static GoodsAttr toEntity(GoodsAttrPO vo) {
        GoodsAttr entity = new GoodsAttr();
        BeanUtils.copyProperties(vo, entity);
        return vo;
    }

    public void setGoodsSkuItems(List<GoodsAttrValue> goodsSkuItems) {
        this.goodsAttrValues = goodsSkuItems;
        if (Objects.nonNull(defaultAttrValueId) && !CollectionUtils.isEmpty(goodsSkuItems)) {
            defaultAttrValueId = goodsSkuItems.get(0).getId();
        }
    }
}
